home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / devel / eiffel / eiffel_p.z / eiffel_p / ep / EiffelScan.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-12-09  |  1.3 KB  |  55 lines

  1. # ifndef yyEiffelScan
  2. # define yyEiffelScan
  3.  
  4. /* $Id: Scanner.h,v 2.6 1992/08/07 15:29:41 grosch rel $ */
  5.  
  6. # if defined __STDC__ | defined __cplusplus
  7. # define ARGS(parameters)    parameters
  8. # else
  9. # define ARGS(parameters)    ()
  10. # endif
  11.  
  12. /* line 2 "eiffel.rex" */
  13.  
  14. #include <strings.h>
  15. #include "StringMem.h"
  16. #include "Memory.h"
  17. #include "General.h"
  18. #include "Idents.h"
  19. #include "Defs.h"
  20. #include "Positions.h"
  21. #include "Errors.h"
  22.  
  23.     typedef struct { 
  24.         tPosition Position;
  25.         tStringRef StringRef;
  26.         tIdent Ident;
  27.         char Char;
  28.         long Int;
  29.         double Real;
  30.     } EiffelScan_tScanAttribute; 
  31.  
  32.  
  33. # define EiffelScan_EofToken    0
  34.  
  35. # ifdef lex_interface
  36. #    define EiffelScan_GetToken    yylex
  37. #    define EiffelScan_TokenLength    yyleng
  38. # endif
  39.  
  40. extern    char *        EiffelScan_TokenPtr    ;
  41. extern    short        EiffelScan_TokenLength    ;
  42. extern    EiffelScan_tScanAttribute    EiffelScan_Attribute    ;
  43. extern    void        (* EiffelScan_Exit) ()    ;
  44.  
  45. extern    void        EiffelScan_BeginScanner    ();
  46. extern    void        EiffelScan_BeginFile    ARGS ((char * yyFileName));
  47. extern    int        EiffelScan_GetToken    ();
  48. extern    int        EiffelScan_GetWord        ARGS ((char * yyWord));
  49. extern    int        EiffelScan_GetLower    ARGS ((char * yyWord));
  50. extern    int        EiffelScan_GetUpper    ARGS ((char * yyWord));
  51. extern    void        EiffelScan_CloseFile    ();
  52. extern    void        EiffelScan_CloseScanner    ();
  53.  
  54. # endif
  55.